package com.mingqijia.gassafety.webserver.service;

import com.mingqijia.gassafety.db.entity.redis.LatestLog;
import com.mingqijia.gassafety.shared.utils.commonUtils.PageUtil;
import com.mingqijia.gassafety.webserver.request.LatestLogListRequest;
import com.mingqijia.gassafety.webserver.request.inner.LatestListRequest;
import com.mingqijia.gassafety.webserver.request.inner.LatestSummaryRequest;
import com.mingqijia.gassafety.webserver.response.AppealLogResponse;
import com.mingqijia.gassafety.webserver.response.LatestLogListResponse;
import com.mingqijia.gassafety.webserver.response.LatestSummaryResponse;

/**
 * <p>
 * 缓存实时状态 服务类
 * </p>
 *
 * @author guoliang.lao
 * @since 2022-03-04
 */
public interface LatestLogService {
    /**
     * 查询实时检测列表
     * @param request
     * @return
     */
    PageUtil<LatestLogListResponse> getList(LatestLogListRequest request);
    /**
     * 查询实时检测列表for师傅
     * @param request
     * @return
     */
    PageUtil<LatestLogListResponse> getListByLonAndLat(LatestListRequest request);
    /**
     * 查询状态数量汇总
     * @param request
     * @return
     */
    LatestSummaryResponse getSummary(LatestSummaryRequest request);
    /**
     * 查询状态数量汇总for师傅
     * @param request
     * @return
     */
    LatestSummaryResponse getSummaryByLonAndLat(LatestSummaryRequest request);

    /**
     * 根据设备号查询实时状态信息
     * @param imei
     * @return
     */
    LatestLog get(String imei,String spId);

    /**
     * 获取历史工单处理详情
     * @param orderNo
     * @return
     */
    AppealLogResponse orderHistoryDetail(String orderNo);
}
